﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Company.Core.Ioc
{
    public enum Lifetime
    {
        Singleton,
        Transient,
    }
    [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)]
    public class ExposedServiceAttribute:Attribute
    {
        public Lifetime Lifetime { get; set; }
        public bool AutoInitialize { get; set; }
        public Type[] Types { get; set; }
        public ExposedServiceAttribute(Lifetime lifetime=Lifetime.Transient,params Type[] types) 
        { 
            Lifetime = lifetime;
            Types = types;
        }
    }
}
